void GameWindow::keyPressEvent(QKeyEvent *event) {
    if (!gameOver) {
        // 移动挡板
        if (event->key() == Qt::Key_Left && paddle.left() > 0) {
            paddle.moveLeft(paddle.left() - 20);
        } else if (event->key() == Qt::Key_Right && paddle.right() < width()) {
            paddle.moveRight(paddle.right() + 20);
        }
    } else if (event->key() == Qt::Key_R) {
        // 重新开始游戏
        ballPos = QPoint(width()/2, height()/2);
        ballVelocity = QPoint(5, 5);
        paddle = QRect(width()/2 - 50, height() - 30, 100, 15);
        score = 0;
        gameOver = false;
    }
    
    update();
}